package segana;
// Generated Mar 13, 2012 4:29:28 PM by Hibernate Tools 3.2.1.GA


import java.util.Date;
import java.util.HashSet;
import java.util.Set;
import javax.persistence.CascadeType;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.FetchType;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.ManyToOne;
import javax.persistence.OneToMany;
import javax.persistence.Table;
import javax.persistence.Temporal;
import javax.persistence.TemporalType;

/**
 * Edicion generated by hbm2java
 */
@Entity
@Table(name="edicion"
    ,catalog="gana"
)
public class Edicion  implements java.io.Serializable {


     private int idedicion;
     private Torneo torneo;
     private Date anio;
     private Set<Participacion> participacions = new HashSet<Participacion>(0);
     private Set<Encuentro> encuentros = new HashSet<Encuentro>(0);

    public Edicion() {
    }

	
    public Edicion(int idedicion, Torneo torneo) {
        this.idedicion = idedicion;
        this.torneo = torneo;
    }
    public Edicion(int idedicion, Torneo torneo, Date anio, Set<Participacion> participacions, Set<Encuentro> encuentros) {
       this.idedicion = idedicion;
       this.torneo = torneo;
       this.anio = anio;
       this.participacions = participacions;
       this.encuentros = encuentros;
    }
   
     @Id 
    
    @Column(name="idedicion", unique=true, nullable=false)
    public int getIdedicion() {
        return this.idedicion;
    }
    
    public void setIdedicion(int idedicion) {
        this.idedicion = idedicion;
    }
@ManyToOne(fetch=FetchType.LAZY)
    @JoinColumn(name="torneo_idtorneo", nullable=false)
    public Torneo getTorneo() {
        return this.torneo;
    }
    
    public void setTorneo(Torneo torneo) {
        this.torneo = torneo;
    }
    @Temporal(TemporalType.DATE)
    @Column(name="anio", length=10)
    public Date getAnio() {
        return this.anio;
    }
    
    public void setAnio(Date anio) {
        this.anio = anio;
    }
@OneToMany(cascade=CascadeType.ALL, fetch=FetchType.LAZY, mappedBy="edicion")
    public Set<Participacion> getParticipacions() {
        return this.participacions;
    }
    
    public void setParticipacions(Set<Participacion> participacions) {
        this.participacions = participacions;
    }
@OneToMany(cascade=CascadeType.ALL, fetch=FetchType.LAZY, mappedBy="edicion")
    public Set<Encuentro> getEncuentros() {
        return this.encuentros;
    }
    
    public void setEncuentros(Set<Encuentro> encuentros) {
        this.encuentros = encuentros;
    }




}


